package com.lintesis.lintesisview.webgui.protocolo.laboratorioexterno;

import org.zkoss.zul.Listheader;
import org.zkoss.zul.Textbox;

import com.lintesis.lintesismodel.common.hibernate.BussinessObject;
import com.lintesis.lintesismodel.common.hibernate.HibernateSearchObject;
import com.lintesis.lintesismodel.protocolo.LaboratorioExterno;
import com.lintesis.lintesisview.common.ListCtrl;

public class LaboratorioExternoListCtrl extends ListCtrl<LaboratorioExterno>{

	private static final long serialVersionUID = -4070658089194439736L;

	Textbox tbRazonSocial;
	Textbox tbEspecialidad;
	
	Listheader lhRazonSocial; 
	Listheader lhEspecialidad;
	Listheader lhDomicilio;
	Listheader lhEmail;
	Listheader lhTelefono;
	Listheader lhNombreContacto;
	
	@Override
	protected void doDefineOrders() {
		orders.put("razonSocial", lhRazonSocial);
		orders.put("especialidad", lhEspecialidad);
		orders.put("domicilio", lhDomicilio);
		orders.put("eMail", lhEmail);
		orders.put("telefono", lhTelefono);
		orders.put("nombreContacto", lhNombreContacto);
		
	}

	@Override
	public void doSetSearchComponents() {
		searchComponents.add(tbRazonSocial);
		searchComponents.add(tbEspecialidad);
	}

	@Override
	protected String getABMDialogURL() {
		return "/pages/protocolo/laboratorioExternoDialog.zul";
	}

	@Override
	public String getEntityName() {
		return "LaboratorioExterno";
	}

	@Override
	protected BussinessObject getNewEntidad() {
		LaboratorioExterno laboratorioExterno = new LaboratorioExterno();		
		return laboratorioExterno;
	}

	@Override
	protected void setDefaultFilters() {
		// TODO Auto-generated method stub
		
	}

	@Override
	protected void setDescripcionLarga() {
		// TODO Auto-generated method stub
		
	}

	@Override
	protected void setSearchFilters() {
		filters.put("razonSocial", "%"+tbRazonSocial.getText()+"%");
		filters.put("especialidad", "%"+tbEspecialidad.getText()+"%");
	}

	@Override
	protected HibernateSearchObject<LaboratorioExterno> getNewHibernateSearchObject()
	{
			return new HibernateSearchObject<LaboratorioExterno>(LaboratorioExterno.class);
	}
}
